Investigating Java Type Analyses for the Receiver-Classes Testing Criterion
نویسندگان
چکیده
This paper investigates the precision of three linearcomplexity type analyses for Java software: Class Hierarchy Analysis (CHA), Rapid Type Analysis (RTA) and Variable Type Analysis (VTA). Precision is measured relative to class targets. Class targets results are useful in the context of the receiver-classes criterion, which is an object-oriented testing strategy that aims to exercise every possible class binding of the receiver object reference at each dynamic call site. In this context, using a more precise analysis decreases the number of infeasible bindings to cover, thus it reduces the time spent on conceiving test data sets. This paper also introduces two novel variations to VTA, called the iteration and intersection variants. We present experimental results about the precision of CHA, RTA and VTA on a set of 17 Java programs, corresponding to a total of 600 kLOC of source code. Results show that, on average, RTA suggests 13% less bindings than CHA, standard VTA suggests 23% less bindings than CHA, and VTA with the two variations together suggests 32% less bindings than CHA.
منابع مشابه
Empirical Analysis of Object-Oriented Design Metrics for Predicting Unit Testing Effort of Classes
In this paper, we investigate empirically the relationship between object-oriented design metrics and testability of classes. We address testability from the point of view of unit testing effort. We collected data from three open source Java software systems for which JUnit test cases exist. To capture the testing effort of classes, we used metrics to quantify the corresponding JUnit test cases...
متن کاملInvestigating strength and frequency effects in recognition memory using type-2 signal detection theory.
Criterion- versus distribution-shift accounts of frequency and strength effects in recognition memory were investigated with Type-2 signal detection receiver operating characteristic (ROC) analysis, which provides a measure of metacognitive monitoring. Experiment 1 demonstrated a frequency-based mirror effect, with a higher hit rate and lower false alarm rate, for low frequency words compared w...
متن کاملEvent-processing middleware with information flow control
• Java runtime library shrinking: only includes necessary reachable classes • Classification of common coding patterns that are safe, but fail static analysis • Use of aspect-oriented weaving tools to intercept call paths that have not been whitelisted by to static analysis or manual examination • Investigating just-in-time application of I-JVM's static field techniques • Appreciation that the ...
متن کاملAn Empirical Analysis of Lack of Cohesion Metrics for Predicting Testability of Classes
The aim of this work is to explore empirically the relationship between lack of cohesion metrics and testability of classes in object-oriented systems. We addressed testability from the perspective of unit testing. We performed an empirical analysis using data collected from two Java software systems for which JUnit test cases exist. To capture testability of classes, we used different metrics ...
متن کاملSpecification-Driven Unit Test Generation for Java Generic Classes
Several approaches exist to automatically derive test cases that check the conformance of the implementation of abstract data types (ADTs) with respect to their specification. However, they lack support for the testing of implementations of ADTs defined by generic classes. In this paper, we present a novel technique to automatically derive, from specifications, unit test cases for Java generic ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2003